A virtual 3D model (or simply “3D model”) can be composed of polygons, such as triangles, which represent the skin of the 3D model. Typically, a rasterization engine draws polygons from the 3D model onto a two-dimensional (2D) surface, such as a computer screen. Typical rasterization engines draw the entire frame buffer at once. A more efficient method can be to break up the frame buffer into individual subsections (tiles) and to render them individually. Each tile usually includes rendering information on one or more polygons or, more typically, a portion of one or more polygons.
Tile based rendering is a hard ware architecture that may be used for rendering real time 3D graphics. The display device is partitioned into a grid of equal sized tiles. Typically, the size of the tile is equal to the size of the render cache, thereby allowing for reduced state changes when switching from one tile to another. Several algorithms, one of which is known as Tile Binning algorithm as well as Tile Assignment algorithm, may support the architecture.
A polygon binning process may be used to reduce the amount of tiles that each polygon can be possibly assigned to. The polygon binning process tries to exclude tiles that do not include any polygons or portions thereof prior to rasterization. The binning process also accomplishes some rasterization setup by identifying which polygons are contained by each tile. By doing this, the amount of processing that must be performed by the rasterization engine is reduced. Current tiling processes may overestimate the number of tiles to which a polygon belongs. Substantial computation may be required to determine which bins each polygon must be submitted to. Further, significant bandwidth may be required to transmit geometry information to the graphics hardware. Although a scene may be static, typically, all scene polygons generally are required by the graphics hardware to render each frame of the scene.
While the invention is subject to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and will herein be described in detail. The embodiments of the invention should be understood to not be limited to the particular forms disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.